function * fn(n) {
    while (n) {
        yield n;
        n--;
    }
}

for (let i of fn(2)) {
    console.log(i);
}

// 2
// 1